import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
//统一返回类
public class ReturnClass {
    static int PageNum=0;
    static List<Vegetables> v=new ArrayList<Vegetables>();
    public static List<String> getListFromFile(String path){
        List<String> list = new ArrayList<>();
        try{
            //读取文件内容
            //创建一个新的 FileReader ，给定要读取的文件的名称。
            //创建使用默认大小的输入缓冲区的缓冲字符输入流
            BufferedReader br = new BufferedReader(new FileReader(path));
            String data = "";
            while ( ( data = br.readLine() ) != null ) { // 一次读取一行
                list.add(data);
            }
            //关闭资源
            br.close();
        } catch(IOException e) {
            e.printStackTrace();
        }
        return list;
    }
    public static List<Vegetables> getVegetables(){
        List<String> s1=new ArrayList<String>();
        s1=ReturnClass.getListFromFile("vegetables.txt");
        for(String s:s1)//将接收到的数据储存到蔬菜集合中
        {
            String[] s2=s.split(" ",5);//调用split方法按照空格对字符串信息进行分隔并储存
            String Name=s2[0];
            Double Lowest=Double.parseDouble(s2[1]);
            Double Ave=Double.parseDouble(s2[2]);
            Double Highest=Double.parseDouble(s2[3]);
            String Time=s2[4];
            v.add(new Vegetables(Name,Lowest,Ave,Highest,Time));
        }
        return v;
    }
    public static List<Vegetables> getListPage(int pageNum, int pageSize){
       List<Vegetables> v1=new ArrayList<Vegetables>();
       v1=v.subList((pageNum-1)*pageSize,(pageNum-1)*pageSize+pageSize);
        //Arraylist.sublist(int fromIndex,int toIndex);
        //返回值也是一个Arraylist集合，从前一个集合下标为fromIndex的位置开始截取，到下标为（toIndex-1）的位置停止
        //也就是传入的参数左闭右开
       return v1;
    }

}
